home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 27 / Mac Magazin and MacEasy Magazine CD - Issue 27.iso / Grafik & Text / GST-MMWDemo / That Manual Thing < prev   
Text File  |  1996-09-24  |  57KB  |  1,209 lines

  1.  
  2.  
  3.  
  4. That Manual Thing
  5.  
  6. (Mark My Words - at last!)
  7.  
  8.  
  9. Documenting: Mark My Words (version 1.0.0) © 1993 by Greg Swann
  10.  
  11.  
  12. 6/24/92
  13.  
  14.  
  15. Greg Swann
  16.  
  17. Email: gswann@primenet.com
  18.  
  19. USPS: 1006 West Main Street, #101
  20.       Mesa, AZ 85201
  21.  
  22.  
  23.  
  24. Table of Contents
  25.  
  26. 0. Blah, blah, blah...
  27.  
  28. 1. Introductory chatter...
  29.  
  30. 2. Commercial, legal and other pertinent notices...
  31.  
  32. 3. Using Mark My Words: the big picture...
  33.  
  34. 4. Where the bodies are buried...
  35.  
  36. 5. Gloats and flourishes...
  37.  
  38. 6. Mark My Words in real life...
  39.  
  40. 7. About Greg Swann...
  41.  
  42. 8. Conclusion...
  43.  
  44.  
  45.  
  46. 0. Blah, blah, blah...
  47.  
  48. "You can rest when you die."
  49.  
  50.             - Charles Barkley
  51.  
  52. That's been my motto though this last round of development, and I've
  53. had occasion to refer to it more times than I expected.
  54.  
  55. Here's the story: we started this a _long_ time ago. Shane Stanley,
  56. uncompensated Vice President in Charge of Everything Else, had
  57. asked Chris Ryland of Em Software to write an MS-Word filter for
  58. QuarkXPress that would parse the Word binary _and_ parse any XPress
  59. Tags found in the text. Chris declined, proving himself possessed
  60. of the better part of valor. Having exhausted the pool of talented
  61. talent, Shane turned to me, undercompensated Vice President in
  62. Charge of Nothing But. I wasn't interested in writing an Xtension,
  63. but I did sign up to do this piece of software, Mark My Words.
  64.  
  65. But: I knew at the time that I didn't know enough to do it. Parsing
  66. someone else's binary and living in peace with three other pieces
  67. of software was, I felt, a bigger chunk of reality than I wanted to
  68. tear off at the time. That's why we did WordLess Plus, a game if
  69. lame pretaste of what we have here (WordLess Plus is FreeWare and
  70. is available in the DTPForum on CompuServe (as WLPLUS.CPT) and
  71. other services; from now on I'm just going to give the CIS file
  72. names, since the vectors don't change).
  73.  
  74. After that, we set about acquiring the skill set I knew we'd need
  75. for this: With Clip 'n' Save (C&S.CPT) we played with PICTs. With
  76. Lizzie Borden (LIZZIE.CPT) we worked out a way to soak up and spit
  77. out text very quickly. With Shane the Plane 2.0 (SPDEMO.CPT) we
  78. explored sensible, intelligent Drag & Drop strategies.
  79.  
  80. There was other stuff in there, including upgrades to XP8 (XP8.SEA)
  81. and Torquemada the Inquisitor (TORQUE.SEA), quick diversions like
  82. ShawBerry (BERRY.CPT), PixPex (PIXPEX.CPT) and A Sort of a Kind
  83. (ASOAK.CPT), plus the normal crush of making a living. Finally in
  84. December we got busy, completing the user interface and slamming
  85. away at the action routines.
  86.  
  87. We started with WriteNow 3.0 files, which we had planned to support
  88. in Mark My Words. We had to stop around Christmas for a couple of
  89. big contract jobs and by the time we popped MMW back off the stack,
  90. WriteNow had been sold to KissOfDeathWare (publishers of
  91. WordStarYouKidding?) and was selling for $37, bundled with 57 fonts
  92. and a golf game, slugging it out for shelf space at K-Mart.
  93.  
  94. Oh, well...
  95.  
  96. Then we moved to Arizona.
  97.  
  98. Best thing for us, but it cost time. Anyway, to make a long story
  99. interminable, it took us a while to get started even after we were
  100. ready to begin. Then it took _forever_ to finish.
  101.  
  102. None of this is such a terrible thing. The whole long while we were
  103. not doing this, we were learning how to do it, even when we weren't
  104. looking for lessons. Most of my early stuff derives from XP8 and
  105. Torquemada. Most of my recent stuff draws upon Lizzie Borden and
  106. Shane the Plane 2.0. But there is code in here from IntelliStudy,
  107. one of the contract jobs, which you will never see unless you pay a
  108. lot of money to take a bar review course. And even once we
  109. (re)commenced, we learned a lot. Not all of the lessons were
  110. pleasant, but all of them were valuable.
  111.  
  112. I tend to write very incrementally. Where another programmer might
  113. devote 20% of his time to coding, and the rest to debugging, I
  114. (normally) spend 95% of my time coding and debugging iteratively
  115. and 5% debugging after the fact. Total investment of labor is
  116. probably about the same, but I feel my way maximizes the
  117. satisfaction and minimizes the frustration.
  118.  
  119. Unfortunately, it didn't quite work this time. We hit a Word
  120. anomaly late in the test cycle and lost a week trying to find and
  121. fix it. It seems trivial when looked at from the back, but there
  122. was a span of time where I was convinced we were going to have to
  123. disable a key feature. Not cool. Not fun. Not timely in a product
  124. that was already _very_ late.
  125.  
  126. And, to compound all this, Mark My Words has a large pre-sale.
  127. People have had their money in my bank account for many months,
  128. which, I'm sure, has not been fun for any of us.
  129.  
  130. Well, all that's past. The Phoenix Suns have been in the NBA
  131. playoffs as we've been finishing this and - no causal connection,
  132. obviously - we've hit major milestones at about the same times. The
  133. outcome of the finals is still in doubt as I write this, but we
  134. take our cue from #34, power forward and MVP, Sir Charles Barkley:
  135. "You can rest when you die."
  136.  
  137.  
  138.  
  139. 1. Introductory chatter...
  140.  
  141. Okay, so what is this...?
  142.  
  143. Mark My Words is a very elaborate MS-Word binary to XPress Tags
  144. text filter. It eats Word 4.0, 5.0 or 5.1 files, interactively or
  145. by Drag & Drop, and converts the binary to QuarkXPress tagged text.
  146.  
  147. Answering the question: why?
  148.  
  149. * The Word filter that ships with Quark would be half-witted with a
  150. little more schooling. No beef, really, they're doing the 80% job
  151. that one can expect of an import filter. But Mark My Words converts
  152. 100% of everything that can be produced in Quark, converts it
  153. intelligently, and gives the user a very high degree of control
  154. over the conversion, permitting, for example, the omission of
  155. unwanted styling or the conversion of word processor-like styling
  156. to desktop publishing-like styling.
  157.  
  158. * Word has the potential to be an excellent "Story Editor" for
  159. Quark but for this: if you Save Text from XPress in Word format,
  160. you lose a _lot_ of styling Quark can produce but Word cannot. But
  161. if you save as XPress Tags, then edit in Word - _using_ Word
  162. styling such Cmd-Shift-B - then run it past Mark My Words, you
  163. retain all the original styling and all the new styling, plus you
  164. acquire the ability to do corrections in a familiar way with
  165. familiar keystrokes.
  166.  
  167. * Moreover, when drafting, you can key in XPress Tags constructs
  168. for features that Word does not support. For example: you’re using
  169. oodles of drop caps, and you’ve set up the styles the way you want
  170. them in XPress. But you really want the drop caps to be scaled 80%
  171. horizontally. Before, you had to either do the scaling in XPress
  172. (inconvenient), or do all your styling with tags (mind-numbing).
  173. Now you can do all your normal styling the Mac-way, and just throw
  174. a <h80> and <h100>  around your drop caps. Mark My Words will do
  175. the rest.
  176.  
  177. * Most significantly: converting the file to a text form with all
  178. styling retained permits you to massage the text with Word, another
  179. editor, or one of my text-banger utilities like ShawBerry or
  180. Torquemada. If you import with the Word filter, you keep the
  181. styling - even where it's bad - plus all the crap. With Mark My
  182. Words, you can omit or convert the styling and you end up with a
  183. file that can be cleaned up with very efficient tools. Moreover,
  184. the new file can be run as is through XP8 to get a massive amount
  185. of quality improvement for a negligible investment of labor.
  186.  
  187. Better filtration. Easier, faster editing. Infinitely better
  188. quality. Win, win, win - surely a better way of working...
  189.  
  190. As mentioned above, Mark My Words owes its origin to Shane Stanley.
  191. He wanted a way to work in Word and yet gain access to XPress Tags.
  192. At first I wasn't too sanguine about the idea, but I've learned to
  193. respect Shane's hunches. I wasn't all that hungry for the ability
  194. to style the Macintosh way, first because I don't create a lot of
  195. text for publishing, and second because I'm used to styling the
  196. text I get from clients directly in XPress Tags, using Torquemada.
  197. The bad part about doing things that way was that I was losing the
  198. italic and bold styling that the clients put into their files,
  199. which was a big pain. So despite my doubts, I was way sold on the
  200. concept after we finished WordLess Plus. I could keep what I wanted
  201. and throw away the rest.
  202.  
  203. From the get, we knew we wanted to support Em Software's Xtags.
  204. Xtags is a plug-compatible XPress Tags filter that offers a rich
  205. superset of the XPress Tags commands. It is highly recommended to
  206. Power Users of QuarkXPress. In MMW, we are supporting Xtags'
  207. ability to create in-line text and picture boxes in a tag stream.
  208. The advantage to this is, if you own Xtags, you can retain any
  209. pictures or in-line tables that are in your Word files.
  210.  
  211. One of the original design goals was to permit iterative re-editing
  212. (that is, taking a Word file, putting it through MMW, cleaning it
  213. up, then doing additional edits back in Word, continuing to use
  214. Word's styling commands, then putting it through MMW _again_, to
  215. convert the added styling). WordLess Plus supported this after a
  216. fashion, but Mark My Words does a much better job of it.
  217.  
  218. And: Shane wanted a way to insulate himself and others from bad
  219. selections when editing. Suppose you have a Word file with explicit
  220. tags in it, typed or inserted by Mark My Words, and you mis-select
  221. some part of those tags and change the styling. For example, you
  222. have:
  223.  
  224. <I>Lepton Local<I>
  225.  
  226. and you decide to make the title of that fine piece of software
  227. Bold-Italic instead of just Italic. You mis-select, making this
  228. much of the text bold:
  229.  
  230. >Lepton Local
  231.  
  232. If Mark My Words were not watching for exactly this kind of error,
  233. you would get:
  234.  
  235. <I<B>>Lepton Local<BI>
  236.  
  237. which would choke the XPress Tags filter and elicit a nasty note
  238. from Xtags.
  239.  
  240. Such deep thinkers are Shane and I that we've been pondering this
  241. problem since MMW was a gleam in Shane's eye. Instead of the
  242. erroneous tags above, MMW will produce:
  243.  
  244. <I><B>Lepton Local<BI>
  245.  
  246. No extra charge.
  247.  
  248. Finally, Shane and I went through about a bazillion rounds of User
  249. Interface development. What we wanted was a UI that would permit
  250. Power Users to take control over every little last thing but would
  251. not present a dizzying array of choices to users less frenetic in
  252. their pursuit of the arcane. I'm very proud of the results, and I
  253. wish to thank Shane publicly, as so many times before, for the
  254. gentle pushing he does in behalf of end-users (starting with
  255. himself, of course (grin), but good products are made by designers
  256. who are also hungry users).
  257.  
  258. I can't say enough good things about Shane, but I'll never stop
  259. trying. If there's anything you hate in software by me, blame me.
  260. But for anything you love, you can expect that at least part of the
  261. credit owes to a light on in a house - and a mind - in Nar Nar
  262. Goon, Victoria, Australia.
  263.  
  264. Mark My Words was tested by Shane, Mary Jo Kostya, Kip Shaw, Mike
  265. Arst, Brad Walrod and Chris Ryland. Shane, Mary Jo and Kip were the
  266. chief victims of the terrible anomaly found late, since it affected
  267. only 68040 machines; think about this when you hear the Clintons
  268. claim that the rich get a free ride (grin). This manual was looked
  269. over by Shane, Mary Jo, Kip, Mike and my dear wife, Ann Swann. None
  270. of them should be held accountable for any part of it, of course,
  271. since I always do what I want, despite excellent advice to the
  272. contrary.
  273.  
  274. On the subject: this file is written as plain text in DOS-like
  275. fashion (i.e., every line ending is a carriage return). It is
  276. produced in a FreeWare Programmer's editor called BBEdit by Rich
  277. Siegel (which is recommended). I've had mail about this, so I'll
  278. explain: I produce documents this way because doing so makes no
  279. presumptions about what software and fonts you might own. _Most_
  280. word processors can open, e.g., MS-Word files. But _all_ word
  281. processors can open _this_ file.
  282.  
  283. The original FreeWare WordLess Plus is available and will always be
  284. available for free. But: Mark My Words is commercial software: you
  285. can't use it (for long) without paying me. The copy of Mark My
  286. Words in this archive is a DemoWare version that will permit up to
  287. 32 launches and then forevermore refuse to do anything but be an
  288. automated salesman. It is a _fully functional_ demo. Nothing is
  289. crippled. A little bit of advertising is tacked on at the end of
  290. each file, but everything works exactly as documented here. The
  291. only inhibition is the one named: 32 launches, max. See
  292. "Commercial, legal and other pertinent notices" below for
  293. information on how to purchase unrestricted copies of Mark My
  294. Words.
  295.  
  296. TechnoBabble: Mark My Words is compatible with both Systems 7 and
  297. 6. It is AppleEvent-aware, so, presumably, you could script to it.
  298. It's 32-bit clean, MultiFinder-aware, doubles on sax (turn up the
  299. volume!), leaves no filmy residue on your fine china - all the
  300. usual stuff. In short (there will be much more later), it's
  301. everything you expect of up-to-the-microsecond Macintosh software.
  302.  
  303. And: this manual presumes a certain adeptitude with QuarkXPress
  304. and, especially, XPress Tags (if you’ve never used them before,
  305. take a look at Appendix C in the XPress manual). But to benefit
  306. from MMW, you need only a basic understanding of how tagging works.
  307.  
  308. If you've been following my meteoric rise to obscurity, you know
  309. that I'm an XPress Tags fanatic. If not, some explanation is due:
  310. XPress Tags is a Text Only language built into QuarkXPress (since
  311. version 3.0) that permits Quark to express and interpret almost
  312. everything it can do. As such, it is richer than any other file
  313. format Quark can import, and, hence, it allows users to do far more
  314. styling and clean-up using automated tools such as my own
  315. Torquemada and XP8. If this sounds like the "bad old days" to you,
  316. you're right - it is. XPress Tags is a mark-up language, exactly
  317. like those used in mainstream type systems and dedicated word
  318. processors. But: in this one case, things were better when they
  319. were worse. If you get a file that uses multiple spaces to
  320. pseudo-align columns, you can spend all afternoon selecting those
  321. space and typing tabs, or you can feed the file to XP8 and do the
  322. whole job plus a lot more in 30 seconds. If you want to get really
  323. radical with XPress Tags (not necessary to the use of Mark My
  324. Words, but potentially very useful in your daily work), a good
  325. place to begin is David Blatner's "The QuarkXPress Book" (Peachpit
  326. Press).
  327.  
  328.  
  329.  
  330. 2. Commercial, legal and other pertinent notices...
  331.  
  332. As mentioned above, this is a DemoWare version of Mark My Words,
  333. fully functional but limited to 32 launches. The full unrestricted
  334. commercial release can be obtained from Greg Swann at:
  335.  
  336.     1006 West Main Street, #101
  337.     Mesa, AZ 85201
  338.  
  339. Licenses are sold per machine, with a single license costing $50;
  340. 2-10 licenses are $45 each; and 11 or more licenses are $40 each.
  341. (Write me if you want to negotiate an unlimited site license.)
  342.  
  343. I've thoughtfully (grin) provided a TeachText order form with this
  344. archive. (Take note that this order form requires a PICT-aware
  345. version of TeachText; use the version that came with your System
  346. software, or open the file through some other PICT-aware software
  347. (such as PhotoShop or MacDraw).)
  348.  
  349. Why is this version DemoWare? As with everything in my life, there
  350. is philosophy here: I don't like crippled software. I don't think
  351. much of ShareWare. And I almost never buy "a pig in a poke". In
  352. deciding on a marketing scheme, I looked for something that would
  353. be most appealing to _me_, were I in your shoes. This is what I've
  354. come up with: a fully functional demo that lets you _find out_ if
  355. Mark My Words is a useful tool in your working environment. If it
  356. is (and obviously _I_ think it will be), then pay me. If it isn't,
  357. then ditch it when it starts to offer to make coupons for you as a
  358. full-time gig. A good deal all around, I think: no guilt for you,
  359. no guilting for me; maybe useful software for you, maybe useful
  360. money for me (grin).
  361.  
  362. (For those who must have it both ways: it would certainly be
  363. possible to download this archive again and again, just to get
  364. access to more launches. Even cleaner, a determined thief could
  365. keep a pristine copy and spawn duplicates to use until they're
  366. exhausted. My take on this is simple: so be it. I work _very_ hard
  367. on the things I make, and I don't want to think that my labor is
  368. going to support people who are overtly hostile to the life of the
  369. mind. But I certainly don't want to be _compensated_ for that
  370. unintended outcome. I may not get my due _from you_, but nature is
  371. just: in the long run, I'll get what's coming to me - and so will
  372. you.)
  373.  
  374. (And if this is the first time you've read a software manual by me:
  375. you'll get used to it... (grin))
  376.  
  377. Mark My Words, its source and executable code, and this poor excuse
  378. for a manual are Copyright (C) 1993 by Greg Swann. All rights are
  379. most emphatically reserved.
  380.  
  381. The unrestricted (non-DemoWare) version of Mark My Words is
  382. licensed for use on one machine by the person who paid for it. If
  383. you didn't pay for it, please do! I am one person, with a
  384. long-suffering family, not Conglomerated MegaSoft (not to imply
  385. that there's any virtue in ripping _them_ off!).
  386.  
  387. Mark My Words is delivered "as is", without any warranties,
  388. expressed or implied. It is not warranted to be useful _to_ anyone,
  389. _for_ anything, and in no wise am I to be held responsible for any
  390. unfortunate consequences resulting from its use or misuse. And I
  391. _hate_ having to say things like that. I do my best to write
  392. useful, simple, elegant, bug-free solutions to difficult problems.
  393. If you take it into your head that I represent your big chance to
  394. "strike it rich", you will pay a lot in legal fees to discover that
  395. you have miscalculated.
  396.  
  397. And: to those to whom the above disclaimers do not apply: forgive
  398. me for having to make them. It's _you_ whom I'm working for, for
  399. pay or for free. I appreciate your patronage and your support, and
  400. I wish we all could just comb the others out of our hair...
  401.  
  402. (Hey, it's a real 'personal' software company! (grin))
  403.  
  404.  
  405.  
  406. 3. Using Mark My Words: the big picture...
  407.  
  408. Mark My Words works on batches of files by Drag & Drop (under System
  409. 7) or interactively from its main dialog (the Open... button). Drag
  410. & Drop operation is relatively smart. In practice, the program will
  411. only stay resident in memory if you are demonstrably interacting
  412. with it. If you are doing no more than D&D batches, it will quit at
  413. the end of each batch. Works like this:
  414.  
  415. D&D only: Quits
  416.  
  417. Double-click launch, then D&D: Quits
  418.  
  419. Double-click launch, then Open...: Stays resident
  420.  
  421. Double-click launch, hit any setting/menu, then D&D: Stays resident
  422.  
  423. We did it this way so that, if you are making temporary changes to
  424. settings, you can still D&D, _but_ if you are just doing a D&D
  425. batch (the likely normal procedure), MMW will get out of memory
  426. without any effort on your part (nothing worse than having to Quit
  427. from a bunch of small things to permit PhotoShop to launch).
  428.  
  429. Whatever the current state of your settings, you can get a Text
  430. Only translation by holding down the Option key at the time that
  431. execution begins. With the Open... button, you would hold down
  432. Option as you hit the button. With a D&D batch, you would hold it
  433. down as the batch begins. The override of the settings will affect
  434. only that file or batch.
  435.  
  436. Mark My Words has a very large footprint in memory. Every major
  437. decision came down in favor of speed, so we are consistently
  438. trading memory for speed. The consequences are these: MMW is
  439. _substantially_ faster than WL+, even though it's doing a _lot_
  440. more; and it eats memory in big bites: the minimum memory required
  441. is approximately 384K + (sizeOfFile * 4). We ship with a 768K
  442. default, which is adequate for most files. If a file is too large,
  443. you'll get an Alert telling you how much to allocate.
  444.  
  445. The Preferences menu is familiar to anyone who's used anything
  446. recent by me. "Restore defaults" restores all controls to their
  447. "factory" default settings. "Restore saved prefs" resets all
  448. controls to their state at the last time the preferences were
  449. saved. And "Save preferences" saves the currently established
  450. settings; these are the settings that you will see with subsequent
  451. launches and after you hit "Restore saved prefs".
  452.  
  453. Where appropriate, CMD-C (Copy), CMD-X (Cut) and CMD-V (Paste)
  454. work, even though there is no Edit menu.
  455.  
  456. The settings in the dialogs are fairly self-explanatory. Everything
  457. is driven by the pop-ups in the Mark My Words Settings dialog box.
  458. Operations can be controlled in a gross fashion with the pop-ups,
  459. and, where appropriate, finer adjustments can be made in
  460. sub-dialogs.
  461.  
  462. The Output format pop-up is interesting. Text Only is obvious.
  463. XPress Tags is also familiar enough. But we are also, optionally,
  464. parsing to Em Software's Xtags, a superset of XPress Tags. The
  465. effect of other switches within the dialogs will depend on the
  466. state of this pop-up. For example, if you have Retain Pictures
  467. checked, embedded pictures will be saved to disk. If you are
  468. writing XPress Tags, it will be up to you to get those pictures
  469. into Quark. But if you are writing Xtags, we're plugging in Xtags
  470. coding to embed the picture in the stream. (Necessarily, pictures
  471. are never other than PICTs (i.e., RIP-crashers), because that's all
  472. that Word will store; they are named intelligently
  473. ("YourFileName¶001", etc.) and live in the same folder as the
  474. _original_ Word source file; with Xtags, the size, scaling, and
  475. aspect ratios are maintained, but you are advised to examine them
  476. to make sure they'll fit in your text link.)
  477.  
  478. In the same respect, the effects of tables and other in-line
  479. elements depend on your choice of formats. With Xtags, we are
  480. doing as much as possible to maintain the original coding. As
  481. above, you'll need to make sure that things fit.
  482.  
  483. And: this may seem like overkill, given that most people don't use
  484. these features of Word. They're included because: 1. some people
  485. _do_, and 2. given that we now have a convenient way of doing this
  486. stuff (by means of Xtags), it seems reasonable to suppose that
  487. we'll find ways of taking better advantage of these features. For
  488. example, Word's multi-cell tables, in conjunction with Xtags and
  489. Torquemada, give us a way of producing side-by-side tables such as
  490. we haven't seen in a while. (Take note that this feature is not
  491. supported by Quark's Word filter.)
  492.  
  493. IMPORTANT: a Word file converted by Mark My Words to Xtags will
  494. choke the XPress Tags filter and vice versa. In theory, these two
  495. Xtensions are identical except for the Xtags extensions to the
  496. XPress Tags language. In practice, there are subtle differences,
  497. with the result that an MMW file written for one filter will not be
  498. compatible with the other. Not such a big deal: you just have to
  499. remember to use the filter you selected in MMW.
  500.  
  501. Output file type enables you to select the creator type of the TEXT
  502. files MMW will produce. This is one of those features that's more
  503. icing than cake, in my opinion. It means that you can double-click
  504. on a file created by MMW and have your editor of choice launch,
  505. instead of Mark My Words or the editor of _my_ choice (BBEdit).
  506. But: given that we live in the age of Drag & Drop (don't we?),
  507. double-click access to your editor is less vitally necessary than
  508. it was under System 6.
  509.  
  510. The Style sheets pop-up lets you control how much of Word's style
  511. definitions go out to the new file. Include definition writes out
  512. the full definition at the start of the file with any
  513. omitted/unsupported values omitted, which means they'll default to
  514. Quark's values for the BasedOn style. We surmise that people can
  515. have changed their default Normal in Quark, and, moreover, Normal
  516. can't be redefined from tags. So when we Include definition, we are
  517. showing Word's Normal as WordNormal=[S"Normal"]. That way, if there
  518. are exceptions to Word's Normal, they'll be preserved in the
  519. definition when the file gets to Quark. And if you've made changes
  520. to Quark's Normal, those will be retained where they are not
  521. overridden by exceptions in WordNormal. Note that all other styles
  522. BasedOn No Style continue to be BasedOn No Style. Also: when we are
  523. defining styles, we don't know yet if that style is actually used
  524. in the text. So all defined styles are shown, and you may want to
  525. chop some out prior to Getting Text.
  526.  
  527. Include name shows only the name of the style as it is called in
  528. the text. This is the one to use if you want to retain Word's
  529. naming convention, but expect to write all the style sheets in
  530. Quark (which policy is recommended). In this instance, Word's
  531. Normal is shown as Normal (i.e., BasedOn No Style), since there are
  532. no exceptions to preserve.
  533.  
  534. All to normal ignores all style definitions and calls and simply
  535. shows everything in the Normal style (which is either Quark's or
  536. your own edited default).
  537.  
  538. Ignore completely ignores styles, period. Use this when you have
  539. edited a previously Marked file and want to leave the styles alone.
  540.  
  541. The next three pop-ups are where the bullet hits the bone. And they
  542. demonstrate rather nicely, I think, why Shane and I deserve to win
  543. the award for User Interface design of the year (grin). What's
  544. going on is this: by means of these pop-ups, you can effect either
  545. wholesale or retail control over the conversion. "Retain all",
  546. "Retain defaults" and "Omit all" are wholesale controls, while
  547. "Custom settings..." permits you to tailor the conversion to your
  548. needs and tastes.
  549.  
  550. This is slick and quick. It keeps the number of choices in the main
  551. dialog to a manageable minimum and gives less-experienced users a
  552. lot of control without requiring a lot of hirsute knowledge. But
  553. there is more at work here: we are actually storing and accessing
  554. the settings in two ways. If you go into a "Custom settings..."
  555. sub-dialog and make some changes, then hit Okay, then change that
  556. pop-up to "Retain all", then "Save preferences", what will happen
  557. is this: both the settings in "Custom settings..." and the state of
  558. the pop-up will be saved as preferences for future use. When you
  559. convert a file, the state of the pop-up ("Retain all") will be
  560. honored, but the settings you established within the "Custom
  561. settings..." sub-dialog will persist, ready for easy access with
  562. the pop-up when you need them. There's a similar kind of speed-up
  563. going on _inside_ the "Custom settings..." sub-dialogs by means of
  564. the "All on", "All off" and "Prefs" buttons. Mark My Words is very
  565. fast at doing its job, converting Word files to Tagged text. But
  566. it's also designed to be very quick in its User Interface.
  567.  
  568. This is global information about the effect of the settings for the
  569. "Paragraph styling", "Character styling" and "Ancillary coding"
  570. pop-ups:
  571.  
  572. Retain all treats all check boxes as checked, treats all pop-ups as
  573. though the second selection were picked, and enables all text edit
  574. regions as their current settings. Retain defaults uses the factory
  575. defaults, which is what you see if you Restore Defaults then
  576. examine "Custom settings...". "Custom settings..." presents a
  577. dialog in which you can change things to your liking. Omit all
  578. treats all check boxes as unchecked, treats all pop-ups as though
  579. the first selection were picked, and ignores the contents of the
  580. text edit regions.
  581.  
  582. Within a "Custom settings..." sub-dialog, the "All on" button
  583. treats all check boxes as checked, treats all pop-ups as though the
  584. second selection were picked, and ignores the text edit regions.
  585. The "All off" button treats all check boxes as unchecked, treats
  586. all pop-ups as though the first selection were picked, and ignores
  587. the text edit regions. The "Prefs" button resets all controls,
  588. including the text edit regions, to their state when "Save
  589. preferences" was last selected.
  590.  
  591. Repeating: the custom settings are honored _only_ if the "parent"
  592. pop-up is set to "Custom settings..." If you make changes, hit OK,
  593. then select Retain all, the custom settings will be preserved but
  594. ignored during conversions, with the Retain all settings being used
  595. instead.
  596.  
  597. The "Paragraph styling: Custom settings..." is the simplest of the
  598. bunch: L&R indents, Leading, Alignment, Space before/after, Keep
  599. w/next, First Line indents, and Tab settings are all obvious. 
  600.  
  601. Important note about tabs: Word stores up to 50 tabs positions per
  602. paragraph, while Quark stores only 20. One Word tab (the vertical
  603. bar) can't be coded in Quark, so that saves us some slots. But:
  604. when we get to the 21st tab we're done; no others are (or can be)
  605. preserved. Moreover, the XPress Tags filter (as of version 1.5)
  606. inadvertently throws away the 20th tab, so, in effect, with XPress
  607. Tags (as of this writing) you have only 19 tabs; with Xtags, you
  608. have the full 20.
  609.  
  610. For Keep together we are ignoring Word, which asks for <*ktA>, and
  611. showing <*kt(2,2)> instead; the change reflects the difference
  612. between word processing and desktop publishing.
  613.  
  614. Rules/Borders is a mutant: it's based on the Borders style in Word.
  615. If a Border is established in a style's definition, we are showing
  616. it as either a rule above and/or rule below, which means that the
  617. rule(s) will show up in every paragraph in that style; nothing we
  618. can do about that, since it comes with the style. However, when a
  619. border is specified as an exception, we are showing the rule above
  620. only above the first paragraph affected, and the rule below only
  621. after the last paragraph, thus simulating as much as possible the
  622. effect of the box in the original file. Since Word users can be way
  623. stupid with boxes, and since, most often, their emphasis is
  624. entirely redundant, my advice is to turn this off. At best, it
  625. flags paragraphs thought worthy of emphasis by the WP operator.
  626.  
  627. There are a few things to discuss in "Character styling: Custom
  628. settings..."  Style changes, Size changes, Font changes, and Color
  629. changes are obvious.
  630.  
  631. The encapsulated font look-up table is used with Word 5.x files, so
  632. you'll get true font names even though the fonts may not be loaded
  633. or their numbers may be different. The font procedure for 4.0 files
  634. is the same as that documented with WL+ - local system name if
  635. fontID is loaded, fontID as text if not; that's what there is to go
  636. by, alas.
  637.  
  638. The colors are the same brain-dead colors as in WL+ - nothing for
  639. it, since that's all the colors there are.
  640.  
  641. Tracking changes: we're preserving this, but it's less than
  642. perfectly useful. Word "tracks" with absolute values expressed in
  643. quarter-points, range -7 to +56 quarter points. Too big for small
  644. sizes, too small for big sizes, too stupid for words. We are
  645. translating quarter points directly to Quark relative units. This
  646. is not always awful, but it does always require follow-up scrutiny.
  647.  
  648. Super/subscript are translated Greg's way: <V> or <V->, IOW Superior
  649. or Superior/Subscript. This seems to me to work better than Quark's
  650. Superscript and Subscript styles, which I find to be too horsey,
  651. and which frequently crash with the lines above and below. I have
  652. my preferences set this way: 33% offset and 50% horizontal and
  653. vertical scaling. Word uses pseudo-sub/superscripts in places
  654. (e.g., footnotes referenced by text instead of counters), and these
  655. are treated as any other styled text (which is what they are).
  656.  
  657. In the pop-ups: Hidden text: Omit throws it away. Retain retains
  658. the Hidden text as text, with no additional styling. Shade 0%
  659. retains it shaded 0, the way WL+ did it. Strike-thru retains it in
  660. the </> style. This option is there for this reason: Word's Table
  661. of Contents and Indexing tools use Hidden text, of course. If you
  662. elect to retain these features, you need some way of getting at the
  663. hidden entries. </> is a very uncommon styling option (with good
  664. reason!), so I selected it as a way of flagging this stuff. Why? I
  665. have hopes that some enterprising Xtension developer will take
  666. advantage of this free mark-up to write TOC and Indexing for Quark.
  667.  
  668. The Underlines conversion is pretty straightforward. Word has four
  669. types of underlines, while Quark has only two. The deficit is
  670. hardly to Quark's disadvantage - when was the last time you had a
  671. burning need for a dotted underline? In any case, each of Word's
  672. underline types can be either Ignored (i.e., passed as plain text),
  673. converted to Italic, converted to the Underline style, or converted
  674. to the Word Underline style. By default, Mark My Words converts all
  675. of Word's undlerlines to Italic, since this is usually what is
  676. meant (in DTP terms) by underscored text.
  677.  
  678. Ancillary coding... is where the rubber meets the road. You may be
  679. asking yourself, "Why all this damned UI?" The reason is this: if
  680. you know what you're doing, you can control every little last
  681. thing. If you don't, we're trying to make it easy for you to stay
  682. out of trouble. Ancillary coding... is the home of the stuff that
  683. it's fairly dangerous to play with (grin).
  684.  
  685. TOC entries and Index entries are discussed above. These switches
  686. control whether or not the Contents and Index subdocuments and the
  687. Index/TOC markers (".i.", ".c.") will be emitted into the text
  688. stream.
  689.  
  690. Page breaks allows or disallows page breaks (expressed as <\c>) in
  691. the text, including the Page Break Before styling command.
  692.  
  693. Headers/Footers controls whether or not these subdocuments will be
  694. emitted into the text stream.
  695.  
  696. Date/Time entries permits or forbids the insertion of text
  697. translations of Word's date/time variables. If checked, the dates
  698. and times will reflect the time of the conversion. This feature
  699. takes account of your current Control Panels settings for dates and
  700. times, so, presumably, they'll be dancing in the streets of old
  701. Budapest tonight...
  702.  
  703. Footnotes allows or disallows inclusion of the footnotes
  704. subdocument. Calls to footnotes in the text will remain, as is, in
  705. the text.
  706.  
  707. In-line pictures is Xtags coolness #1. If there are pictures in the
  708. file, if this box is checked, and if the output format is Xtags,
  709. the pictures will be saved to disk as PhotoShop PICTs and the
  710. appropriate Xtags coding will be plugged into the text. If the
  711. format is XPress Tags, the pictures will be saved to disk, but the
  712. user will be responsible for placing them. Equations made with
  713. Word's equations editor are encapsulated QuickDraw PICTs, which
  714. means they can be edited with a QuickDraw editor like MacDraw or
  715. Canvas, and they will produce device-independent, object-oriented
  716. images. Likewise, since PICTuresque can create PICTs with
  717. encapsulated PostScript, this feature is at least slightly more
  718. than interesting window dressing (grin).
  719.  
  720. In-line text boxes is Xtags coolness #2. This controls what happens
  721. with Word's in-line tables and Word 5.1's (incredibly stupid) drop
  722. caps. If checked, if Xtags, in-line text boxes will be parsed into
  723. Xtags boxes with the appropriate coding. The boxes are sized
  724. arbitrarily, so you'll either have to drag them out by hand or
  725. write Torque sets to change them. If not Xtags, in-line text is
  726. emitted as styled text. In the case of tables, cell and row
  727. boundaries are flagged with tabs.
  728.  
  729. MMW comments inserts readable comments into the text, where
  730. appropriate, if a feature is turned off. For instance, if Date/Time
  731. entries is turned off, and a date is found, the text "{{Date}}" is
  732. inserted at that spot. If you don't want comments inserted, uncheck
  733. this box. This is the list of possible comments:
  734.  
  735. {{Table cell}}
  736.  
  737. {{In-line box}}
  738.  
  739. {{Picture: NameOfFile¶000}} <-XPress Tags
  740.  
  741. {{Picture}} <-Text Only
  742.  
  743. {{Date}}
  744.  
  745. {{Time}}
  746.  
  747. {{Page number}}
  748.  
  749. {{Footnote separator}}
  750.  
  751. {{Footnote continuation}}
  752.  
  753. {{Formula}} <-refers to formula glossary text not equations
  754.  
  755. Many of the Ancillary coding switches, including MMW comments, have
  756. meaning even in a Text Only translation. For example, if Date/Time
  757. entries is checked, then the dates and times will be converted. If
  758. not, but MMW comments _is_, then the comment will be inserted. IOW,
  759. Text Only means what it says: any controls that would create new
  760. XPress tags are disabled, but the others remain in effect unless
  761. explicitly switched off.
  762.  
  763. Below all this are two text edit regions, one for the default
  764. XPress Tags version tag, which is also honored by Xtags, and one
  765. for the default Xtags translation table. Note that either of these
  766. can be "switched off" merely by deleting the text. Note also that
  767. each, if present, is inserted anew into a file, each time it passes
  768. through Mark My Words. So, if you mark a file, then take it back to
  769. Word for further editing, then mark it again, the old version and
  770. Xtags &tt2 tags will be ripped out and replaced by whatever is the
  771. currently established default. FWIW, while the version tag for 3.2
  772. will be 1.6, MMW is writing XPress Tags 1.5/Xtags 1.0 compliant
  773. tags. Filter 1.6 offers very little new coding, and most of it is
  774. not relevant to Word. The only 1.6 construct in MMW is
  775. [S"BasedOnStyle","NextStyle"], used only in XPress Tags
  776. translations. Filter 1.5 ignores this construct, but filter 1.6
  777. will accept it _if_ your version tag is set for 1.60.
  778.  
  779.  
  780.  
  781. 4. Where the bodies are buried...
  782.  
  783. * I wish I had greater control over the in-line text boxes. I was
  784. compelled to use arbitrary box sizes because of the idiotic way
  785. Word stores the sizing information.
  786.  
  787. * The formula glossary text is far from ideal, largely because Word
  788. is interpreting formulae on the fly (and has a lot of positioning
  789. controls Quark doesn't have).
  790.  
  791. * The Rules/borders solution is the best answer we could come up
  792. with to an ugly problem.
  793.  
  794. * As regards running the same text through MMW more than once, the
  795. feature is robust but not fool-proof. If you're just doing text
  796. editing, set Style sheets to Ignore. Any character or paragraph
  797. property exceptions you introduce will be honored, but the style
  798. sheets won't be parsed. If, OTOH, you want to define new styles,
  799. you can. Just Include definition. Take note, however, that
  800. WordNormal and any other default styles you have defined (i.e.,
  801. present in all new documents) will be parsed again. You'll need to
  802. go through the styles and chop out the replacements. This is
  803. important because Quark does not redefine styles; the first
  804. definition found for a particular name is the one used, and later
  805. definitions under that name are ignored (this, essentially, is why
  806. you can't redefine Normal).
  807.  
  808.  
  809.  
  810. 5. Gloats and flourishes...
  811.  
  812. * Word, like Quark, is massively redundant. We are watching what
  813. we're doing as we work and we issue styling only where an actual
  814. change has occurred. No harm comes of writing extremely redundant
  815. Tags, as does the QXPTags export filter, but doing it this way
  816. makes things a lot easier on us wetware types.
  817.  
  818. * If you've used Quark's Word filter, you know that Quark and Word
  819. do not agree about what happens to character styling at style
  820. boundaries. Word retains the exceptions, while Quark wipes the
  821. slate and baselines everything to the style. Taking account of this
  822. conflict, Mark My Words reissues any pending styling exceptions
  823. when a style boundary is crossed. IOW, MMW tags behave like the
  824. Word file, and not like the Word-filter imported text.
  825.  
  826. * We are doing everything we can to shoehorn Word's 50 tabs into
  827. Quark's 20 slots. The sequence for an exception is delete, compact,
  828. add, sort, compact, with the whole point being never to waste a
  829. slot. Word's (wonderful!) vertical line tab is omitted, of course.
  830. But, at bottom, when we get to the 21st tab, we're done - the rest
  831. are tossed.
  832.  
  833. * It's _real_ fast... (grin)
  834.  
  835.  
  836.  
  837. 6. Mark My Words in real life...
  838.  
  839. The mis-selection business works like this: before we apply any
  840. styling, we are looking at the raw text. Where we spot an open
  841. angle bracket, we are looking ahead to see if it is legally
  842. terminated. If it isn't we are insulating it as "<\<>" (the XPress
  843. tags way of showing an open bracket as text). We are doing the same
  844. thing for illegal closing angle brackets ("<\>>"). That way, we can
  845. be assured that every angle bracket found in the text is part of a
  846. legal XPress tag. Then, when we get around to looking for
  847. improperly nested tags (e.g., <I<B>>, as shown above), we can
  848. easily switch things around without worrying that we're hosing good
  849. text.
  850.  
  851. Important: the MMW tag insulation is not as good as XP8's. We're
  852. not striving to identify improperly formatted tags, but, rather, to
  853. insulate the genuine impostors. Likewise: unlike XP8, we are not
  854. doing anything about "@" and "\" when they are used as text.
  855. Properly, these should be shown as <\@> and <\\>. To be safe(r),
  856. you should still run the MMW file through XP8. Then use Xtags, of
  857. course, since, while XPress tags filter 1.6 will be a lot better
  858. about this than 1.5, Xtags' error-reporting still blows it out of
  859. the water.
  860.  
  861. Moreover, you are ever and always on your own when it comes to tags
  862. that are legal but illogical. If you have this as text:
  863.  
  864. <<B>>
  865.  
  866. Mark My Words will know enough to make it look like legal XPress
  867. tags (<\<><B><\>>), but that <B> in the middle is legal and will
  868. pass the test of quality in MMW, in XP8, in XPress tags and in
  869. Xtags. Everything after it will be bold until it is turned off. In
  870. other words: while software can protect you from obvious,
  871. identifiable errors, it can never be a substitute for an active
  872. human intelligence.
  873.  
  874. On the same planet: if you have a file (like this one) that is
  875. filled with clearly legal XPress Tags that are _not_ intended to be
  876. interpreted as XPress Tags, you need to insulate them on your own,
  877. since no software is going to reject perfectly legal tags. You can
  878. search for, e.g., "<" and replace with "<\<>", but that seems to me
  879. to beg for errors. What I do is this: I search for "<" and replace
  880. with "«" (option-backslash; closing form is
  881. shift-option-backslash). That keeps approximately the same look,
  882. and it's easy enough to switch back when I get to XPress. The point
  883. is this: if it's not to be interpreted as a tag, it can't _look_
  884. like a legal tag.
  885.  
  886. Next up: Xtags looks for pictures only by absolute path (like
  887. Quark). I omitted paths in the picture specifications so you
  888. _could_ move the pics if you wanted; otherwise Xtags would insist
  889. they remain where birthed, and Quark would still only let you move
  890. them into the same folder as the Quark file without relinking.
  891. Ergo, move a standing Quark file or Save a new file into the folder
  892. where the pictures reside prior to doing Get Text With Xtags.
  893.  
  894. IMPORTANT (and easy to forget): If the Quark file and the pictures
  895. are not resident in the same folder, Xtags won't find them.
  896.  
  897. On the point: those Xtags text and picture boxes are cool, but each
  898. one is a Quark object. That means that each one takes time to
  899. create, and more time, ever and always, for Quark to manage. A word
  900. to the wise is sufficient: if you create a file with thousands of
  901. objects, expect to do a lot of waiting...
  902.  
  903. And: if you don't have an Xtags translate table, delete the text
  904. for it in in Ancillary coding and Save Prefs. If no text, no tag. I
  905. myself have a table named "YourTableName" (grin - but I'm not
  906. kidding).
  907.  
  908. Mark My Words will not process Fast Saved files. Sorry. We had
  909. wanted to do it with this version, but I deliberately walked away
  910. from it because Word files are entirely too attenuated as it is. If
  911. you select or D&D a Fast Saved file, MMW will display an Alert then
  912. get on to the next task.
  913.  
  914. There are a certain few other occasions where Mark My Words will
  915. fail (ever gracefully) to process a file. For example, files
  916. produced by versions of Word earlier than 4.0 are politely refused.
  917. And: files that are excessively complicated are deflected. In the
  918. former event, open the file from Word and Save As in a version less
  919. historic. In the latter case, chop the file up into smaller chunks
  920. and feed them to MMW in a batch. For reference: a file will be
  921. refused on the grounds of complexity if it entails more than 8192
  922. character styling or 8192 paragraph styling changes. This limit is
  923. eight times that imposed by WordLess Plus, and you may be delighted
  924. to hear that we haven't been able to hit it in extremely
  925. complicated testing files weighing in at over a quarter-megabyte.
  926. In other words, complexity is a non-issue.
  927.  
  928. Real life: Word plus Mark My Words make a better front end to Quark
  929. than anything we now have available. In the long run, I intend to
  930. make something better, but this will do for now. The advantages are
  931. these: You can draft as Styled Text, using the familiar Keyboard
  932. Equivalents, as opposed to typing verbose and obscure XPress Tags.
  933. Moreover, the people who type for you can give you what you need
  934. without your having to teach them very much. The resultant files
  935. can be run through Mark My Words, Torquemada, and XP8. And then, if
  936. you want, you can open them _again_ from Word, do the edits as
  937. Styled Text, run through Mark My Words again, etc. You can work
  938. with tags without having to type (and _check!_) each and every one.
  939.  
  940. If you are lucky enough to have people typing for you who do what
  941. you say, you can introduce their files to Torquemada and have a
  942. great deal of the up-front labor of your jobs done for free. For
  943. example, if some words of a paragraph need to swap out to a PMS
  944. color, you can have the keyboarder style that text as "Blue", then
  945. search in Torquemada, replacing "Blue" with the true name of the
  946. color. Or you can use XP8's mnemonics or a code of your own
  947. devising to flag special situations and dingbat characters, then
  948. use XP8 or Torquemada to plug in the true XPress Tags coding.
  949.  
  950. Unless you turn this feature off, every Mark My Words file begins
  951. with the XPress Tags version tag ("<v1.60><e0>"). This is included
  952. because Mark My Words makes use of the Baseline Shift tag
  953. ("<bXX>"), and Quark varies its interpretation of that tag based on
  954. the presence or absence of the version tag. Without it, the file is
  955. interpreted as being a Quark 3.0 file, and the effect of the
  956. Baseline Shift is inverted (viz., positive values shift down
  957. instead of up, replicating a bug in the XPress Tags filter that
  958. shipped with Quark 3.0). If you are still running XPress 3.0
  959. (why?), you will need to do two things: lose the version tag and
  960. invert the signs of all baseline shifts. These Torquemada strings
  961. should serve to do both:
  962.  
  963. <v^?^p        {nothing}        Omit the version tag
  964.  
  965. -b^#        |b^#            Mark the negative values
  966.  
  967. b^#            -b^#            Invert the positive values
  968.  
  969. |-            {nothing}        Remove the marks
  970.  
  971. In the same neighborhood: the second half of the version tag
  972. ("<e0>") is a language identifier. If you are working with a
  973. non-English version of Quark, you may need to change this to the
  974. code shown when you Save Text as XPress Tags from within Quark.
  975.  
  976. Likewise: we are converting the QuickDraw colors in Word using
  977. their English names (e.g., "Black", "Blue"). I don't know if
  978. non-English versions of Quark tags use non-English names for the
  979. QuickDraw colors, but, if they do, and if you're competent with
  980. ResEdit, you can "internationalize" these colors fairly simply by
  981. editing STR# resource number 133. Change only the literal name of
  982. the color, leaving the quote marks alone. Sequence is significant,
  983. so translate the color names "in place" (e.g., "Schwarz" for
  984. "Black", not "Blue"). If you work in multiple languages, you can
  985. spawn versions of MMW, one for each language you use. Presumably,
  986. nothing else about XPress tags is language-sensitive, but if that
  987. turns out not to be the case, do please let me know. We strive to
  988. make our software as international as possible, and we fail through
  989. ignorance rather than lack of trying.
  990.  
  991. And one more: as a default, we are showing Word's numbered
  992. footnotes in Quark's Superior style. Alas, there is no clear-cut
  993. way of dealing with footnotes flagged manually with user-supplied
  994. text. These are being shown the way that Word is storing them. For
  995. example, they might come across as "<z9.0b3.0>". If you have
  996. footnotes of both types in the same file, you'll need to search to
  997. bring them into concordance.
  998.  
  999. Useful: Word 5.x does an excellent job of filtering a number of
  1000. alien file formats. It sees all its own historical versions, of
  1001. course, plus all of the many version of DOS Word. But it also does
  1002. a great job with, e.g., WordPerfect for Mac and DOS. The best thing
  1003. to do with an alien file is to get it into Word in some way,
  1004. preferably from Word 5.x, from MacLink or Software Bridge
  1005. otherwise. Then Save As a Word 5.x file and run the resultant file
  1006. through Mark My Words. This is the most efficient means you have of
  1007. retaining the maximum amount of supplied paragraph and character
  1008. formatting.
  1009.  
  1010. Eminently nerd-like hack: every piece of software by me that has a
  1011. Preferences menu (Shane the Plane, Clip 'n' Save, ShawBerry, and
  1012. Mark My Words) stores its preferences in the resource fork of the
  1013. software itself. The Default prefs are stored in 'PREF' resource
  1014. 128, and the Saved prefs are stored in PREF 129. When you Save
  1015. preferences, PREF 129 is re-written with your new settings. If you
  1016. are comfortable with ResEdit, you can use it to give yourself two
  1017. sets of stored preferences. Do this (on a _copy_ of Mark My Words,
  1018. of course):
  1019.  
  1020. 1. Establish your second-favorite settings and Save preferences.
  1021. Quit.
  1022.  
  1023. 2. Open the copy of Mark My Words from ResEdit, and navigate your
  1024. way to PREF 129. Select all and Copy.
  1025.  
  1026. 3. Open PREF 128, Select All and Paste. Save and Close the file.
  1027. The two resources are now identical, with both containing your
  1028. second-favorite settings.
  1029.  
  1030. 4. Launch Mark My Words again and establish your (first-)favorite
  1031. settings and Save preferences. Now when you do Restore defaults,
  1032. you'll get your second-favorite settings, and when you do Restore
  1033. saved prefs, you'll get your (first-)favorite settings, which will
  1034. also be loaded automatically with every subsequent launch.
  1035.  
  1036.  
  1037.  
  1038. 7. About Greg Swann...
  1039.  
  1040. Okay, here's the deal: I'm not just a developer, I'm a user of
  1041. software as well. I make about half of my money doing Desktop
  1042. Publishing. In consequence, I have a pretty clear idea of how to
  1043. focus utilities designed to plug gaps in the functionality of major
  1044. applications. I am quite sure there are a _lot_ of developers
  1045. brighter than I am. But the evidence of experience suggests that
  1046. few of them have my advantage of living on both sides of the line,
  1047. so to speak.
  1048.  
  1049. What does this mean?
  1050.  
  1051. First, it means that I have written a _lot_ of mission-critical
  1052. utilities in support of the software categories of interest to me:
  1053. file management, font management, automated text processing,
  1054. PostScript-processing, and automated DTP-software preparation. All
  1055. but four of these utilities are FreeWare (the exceptions being Mark
  1056. My Words and the three packages discussed below) and are available
  1057. on CompuServe (GO DTPForum, BROwse on 70640,1574) and other
  1058. electronic information services (including any service offering
  1059. access to the Arizona Macintosh User's Group BBS-In-A-Box CD-ROM).
  1060.  
  1061. Second, it means that if you are likewise interested in these
  1062. software categories, it behooves you to support my work. Fanmail is
  1063. always nice, of course, but remuneration is the sincerest form of
  1064. flattery (grin). Seriously: this is a business, even if a
  1065. microscopically small one. It has been worthwhile so far because
  1066. the other things commanding my attention have not been as
  1067. lucrative. But that is changing (of course, and obviously,
  1068. _because_ of all the software). I can make a _lot_ of money writing
  1069. custom software for contracted clients. And I can streamline my own
  1070. production work without having to monkey-proof and document my
  1071. tools. So: if I am to keep doing this, I have to make it pay. If
  1072. you _want_ me to keep doing it, you have to pay me. It's that
  1073. simple.
  1074.  
  1075. In many ways, retail software is simpler. You pay or you don't
  1076. play, and no one has any illusions. The difference is, the
  1077. developer needs a _much_ larger capital commitment, and he needs to
  1078. surround himself with babbling morons in suits who might - just
  1079. possibly - be good for something other than chuckling about
  1080. football. Electronically distributed software gets around that
  1081. trap, but introduces the problem exposed here: the ambiguity of the
  1082. sales transaction results in a lot of prostrate begging by
  1083. developers. I don't beg, but I don't work for free except on my own
  1084. terms for my own good reasons.
  1085.  
  1086. There are three possible "futures" for authors of electronically
  1087. distributed software. 1. The rewards do not justify the effort, so
  1088. the author goes and plays tennis or something. 2. The author
  1089. produces software as an after-work hobby and continues to do so
  1090. more or less irrespective of user-response (some of the best and
  1091. worst FreeWare comes out of this category). 3. The author's growing
  1092. reputation results in him getting more contracted custom
  1093. programming work, worth more money, to the point that he no longer
  1094. has time to produce electronically distributed software.
  1095.  
  1096. It is the last that is happening to me, and this is why you need to
  1097. support my work, if you want it to continue. I'll do all right
  1098. whether I'm working on problems that confront you or on the
  1099. problems of some corporation. But: if you are using software by me
  1100. that has a commercial version (and all of them are discussed here),
  1101. and if you want me to _continue_ thinking about your problems,
  1102. rather than the problems of Consolidated MediCalc - you know what
  1103. to do...
  1104.  
  1105. These are my commercial programs (excluding Mark My Words, about
  1106. which you might already have heard a word or two (grin)):
  1107.  
  1108. XP8 - a very intelligent file filter that cleans up and makes the
  1109. filthiest text QuarkXPress-ready. Among many other features, it
  1110. offers DOS-file reformatting, financial-text clean-up, garbage
  1111. disposal, typographic quality enhancement, and the best quote
  1112. conversion we know of. The ShareWare version of XP8 (v1.0.0) can be
  1113. found on CIS, GO DTPForum, Library 5, under the name XP8.SEA. It is
  1114. also included on the distribution disk for the unrestricted version
  1115. of Mark My Words. The current commercial version is v1.0.6 and
  1116. offers a great many enhancements over the ShareWare version.
  1117.  
  1118. Torquemada The Inquisitor - batch global search and replace
  1119. software with wildcards, pattern matching, string substitution, et
  1120. very cetera. With Drag & Drop under System 7, you can run up to 640
  1121. searches on up to 128 files in one batch. Features the most
  1122. intelligent case-conversion we know of. The most-recent FreeWare
  1123. version (1.1.0) can be found on CIS, GO DTPForum, Library 5, under
  1124. the name TORQUE.SEA. It is also included on the distribution disk
  1125. for the unrestricted version of Mark My Words. The current
  1126. commercial version is 1.2.2, offering a great many enhancements,
  1127. including new "wildthings" and a _lot_ of new User Interface power.
  1128.  
  1129. Shane the Plane 2.0.0 - file and font attribute editing utility.
  1130. Interactively or in Drag & Drop batches, permits you to change the
  1131. Creator/Type of files, their created/modified dates and times, a
  1132. host of significant Finder flags, plus a lot more. Makes files
  1133. invisible/visible, makes fonts behave like files by removing their
  1134. BNDL resources, batch "pastes" custom icons, intelligently renames
  1135. and/or "slugs" files, et very cetera. A demonstration version
  1136. (fully functional but limited to 32 launches) can be found on CIS,
  1137. GO DTPForum, Library 12, under the name SPDEMO.SEA. It is also
  1138. included on the distribution disk for the unrestricted version of
  1139. Mark My Words.
  1140.  
  1141. (While I've vectored all the files toward CIS, my primary haunt,
  1142. they are also available on other services, and on any BBS which has
  1143. the most recent version of AMUG's BBS-In-A-Box CD-ROM on line.)
  1144.  
  1145. Shane the Plane 2.0.0 is sold on these terms:  (US)$40 each, per
  1146. license. Two to 10 licenses are $35 each, and 11 or more are $30
  1147. each.
  1148.  
  1149. Mark My Words, XP8 and Torquemada are each sold under these terms:
  1150. (US)$50 each, per license. Two to 10 licenses are $45 each, and 11
  1151. or more are $40 each. These three programs will eventually be
  1152. rolled into a stand-alone text editor cum word processor currently
  1153. in design with the working name "MyEditor". You will be entitled to
  1154. a 25% discount on the price of the MyEditor, when it is released,
  1155. for each of these utilities you have purchased and registered. In
  1156. other words, if you own XP8, your discount will be 25%. If you own
  1157. XP8 and Torquemada, it will be 50%. And if you own all three, you
  1158. will be entitled to a 75% discount. (This discount does not apply
  1159. to Shane the Plane, which is establishing its own upgrade path.)
  1160.  
  1161. If you want to buy any or all of these programs, send a check or
  1162. money order* to:
  1163.  
  1164.     Greg Swann
  1165.     1006 West Main Street, #101
  1166.     Mesa, AZ 85201
  1167.  
  1168. *Outside the U.S., you may send cash at your own risk, if exchange
  1169. issues make that expedient.
  1170.  
  1171. These programs are included on the distribution disk for the
  1172. unrestricted version of Mark My Words:
  1173.  
  1174. * Mark My Words v1.0.0 - discussed here at some length (!)
  1175.  
  1176. * XP8 v1.0.0 - ShareWare version of the commercial software
  1177.  
  1178. * Torquemada the Inquisitor v1.1.0 - FreeWare version of the
  1179.   commercial software
  1180.  
  1181. * A Sort of a Kind - very fast, very robust text file sorting utility
  1182.  
  1183. * FontFischer - font specimen book creation utility
  1184.  
  1185. * PixPex - Drag & Drop Xtags picture box creation utility
  1186.  
  1187. * ShawBerry - text file merging utility
  1188.  
  1189. Plus some other stuff...
  1190.  
  1191.  
  1192.  
  1193. 8. Conclusion...
  1194.  
  1195. Jeez, haven't you had _enough_...? (grin)
  1196.  
  1197. Seriously: that's it. If you have any questions or problems, the
  1198. easiest way to get hold of me is via email at gswann@primenet.com.
  1199. If you can't do that, you can snail mail me at:
  1200.  
  1201.     Greg Swann
  1202.     1006 West Main Street, #101
  1203.     Mesa, AZ 85201
  1204.  
  1205. Last licks: it turns out that the Suns died in the NBA finals, so
  1206. now Barkley can rest. Miles to go before _I_ sleep, but this is a
  1207. big weight off my shoulders. Here's hoping it buys a nap or two
  1208. for you!
  1209.